/*
 * @Descripttion:
 * @version:
 * @Author: HXW
 * @Date: 2020-03-10 10:45:13
 * @LastEditors: HXW
 * @LastEditTime: 2020-04-14 14:22:30
 */

import { Attribute, AttributeType } from "./attribute";
export interface AttributePanelAttributeType extends AttributeType {
  leftControl?: Attribute;
  rightControl?: Attribute;
  /** 是否固定定位*/
  isFixedPos?: boolean;
  /** 是否可移动 */
  isMove?: boolean;
  /** 是否隐藏关闭按钮 */
  isHideClose?: boolean;
  /** 是否隐藏收缩展开按钮 */
  isHideExpand?: boolean;
  /** 是否展开 */
  isExpand?: boolean;
  /** 面板宽度 */
  width?: number;
  /** 面板高度 */
  height?: number;
  /** 是否水平居中 */
  isCenter?: boolean;
  x?: number;
  y?: number;
  z?: number;
  top?: number;
  bottom?: number;
  right?: number;
  left?: number;
  backgroundColor?: string;
  isNoPadding?: Boolean;
  closeEvent?: string;
}

export class AttributePanelAttribute extends Attribute {
  /** 设置字符串属性类型用来代码判断是什么属性用什么显示控件 */
  constructor(obj?: AttributePanelAttributeType) {
    super(obj);
    obj && Object.assign(this, obj);
    //type改panel
    this.type = "panel";
  }
  /**是否有padding */
  isNoPadding: Boolean = false;
  /** 左边 */
  leftControl?: Attribute;
  /** 右边 */
  rightControl?: Attribute;
  /** 是否固定定位*/
  isFixedPos: boolean = true;
  /** 是否可移动 */
  isMove: boolean = false;
  /** 是否隐藏关闭按钮 */
  isHideClose: boolean = true;
  /**关闭事件 */
  closeEvent: string;
  /** 是否隐藏收缩展开按钮 */
  isHideExpand: boolean = true;
  /** 是否展开 */
  isExpand: boolean = true;
  /** 面板宽度 */
  width: number;
  /** 面板高度 */
  height: number;
  x: number;
  y: number;
  z: number;
  top: number;
  bottom: number;
  right: number;
  left: number;
  /** 是否水平居中 */
  isCenter: boolean = false;
  backgroundColor: string;
}
